当mongodb开启用户认证后(auth=true),如何使用mongoose链接数据库

您所在的位置:网站首页 nodejs mongoose 当mongodb开启用户认证后(auth=true),如何使用mongoose链接数据库

当mongodb开启用户认证后(auth=true),如何使用mongoose链接数据库

#当mongodb开启用户认证后(auth=true),如何使用mongoose链接数据库| 来源: 网络整理| 查看: 265

之前本人mongdb一直裸跑,学到用户认证后决定给mongodb加个管理员用户,就是在system.admin.user中添加个用户。原程序中链接数据库部分使用的是mongoose来实现的 exports.Connection = mongoose.connect('mongodb://locahost:27017/db);(之前是裸跑所用没有用户名和密码直接就连上了) 可是我改为 exports.Connection = mongoose.connect('mongodb://root:123456@locahost:27017/db); 提示: MongoError: auth fails 百度后发现这个用户名密码不是db这个数据库的,所以认证失败

后来查阅mongoose API 发现open方法中好像有auth参数 又改成 var db = exports.Connection = mongoose.createConnection(); var options = { db:{native_parser:true}, server:{poolSize:5}, auth:{ user:“root”, pass:123456 } } db.open(settings.host, settings.db, settings.port, options); 结果还是无法向db数据库中操作数据 最后问题是,我的管理员账户是在system.admin.User中,如何认证通过?通过后又如何操作其他数据库(本例中为db)中的数据? 在原生的mongodb中好像有db.auth(“root”,“123456”) 返回1就是认证通过,那么在mongoose中如何实现呢? 请教各位大牛们,谢谢!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3